﻿using System;
using System.IO;
using System.Collections.Generic;
using EventbriteService.Adapter;
using EventbriteService.Model;

namespace EventbriteService
{
   public  interface IEventbriteClient
    {
        string GetResponse(Uri requestUrl);
        IEnumerable<Attendee> EventAttendees(long eventId);
        Event GetEvent(long eventId);
        Venue GetVenue(int venueId);
        User GetUser();
        Organizer GetOrganizer(long id);
        //QuestionSet GetEventQuestions(long id);
        IEnumerable<Event> GetUserEvents();
        IEnumerable<Venue> GetUserVenues();
        IEnumerable<Organizer> GetUserOrganizers();
        IEnumerable<Order> GetUserOrders(long? userId);
        IEnumerable<Order> GetEventOrders(long eventId);
        IEnumerable<Category> GetCategories();
        IEnumerable<Format> GetFormats();
        Order GetOrder(long id);
        TextWriter LogResult { get; set; }
        IDataAdapter CreateAdapter(string doc);

    }
}
